import request from '@/utils/request'
import axios from 'axios'
import { baseURL } from '@/utils/request'

/**
 * @description: 登录接口
 * @param {Object} data
 * {string} mobile 手机号
 * {string} code 短信验证码
 * @return {*} obj
 * obj.token
 * obj.refresh_token
 */
export const login = data =>
  request({
    url: '/v1_0/authorizations',
    method: 'POST',
    data,
  })

/**
 * @description: 更新 token
 * @param {string} refresh_token 刷新令牌
 * @return {*}
 * token 获取到的新的 token
 * !使用 refresh_token 更新 token 不能使用 instance, 请求拦截器中会覆盖请求头
 */
export const updateToken = refresh_token => {
  return axios({
    url: baseURL + '/v1_0/authorizations',
    method: 'PUT',
    headers: {
      Authorization: `Bearer ${refresh_token}`,
    },
  })
}

// ---------------- 以下接口需要权限，按接口文档要求，在请求头中携带 token

/**
 * @description: 获取用户信息
 * @return {*} obj
 */
export const getProfile = () =>
  request({
    url: '/v1_0/user/profile',
  })
